/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ifpe.entities;

import static ifpe.consistencies.Consistencies.*;

/**
 *
 * @author Sostenes
 */

/*
 * colunas: `pessoa`.`id`, `pessoa`.`nome`, `pessoa`.`cpf`
 */
public abstract class Pessoa {

    private long idPessoa;
    private String nome;
    private String cpf;

    public long getIdPessoa() {
        return idPessoa;
    }

    public void setIdPessoa(long id) {
        this.idPessoa = id;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        consistNotNull(nome, "O campo Nome não pode ser vazio.");
        this.nome = nome;
    }

    public String getCpf() {
        return cpf;
    }

    public void setCpf(String cpf) {
        consistNotNull(cpf, "O campo CPF não pode ser vazio.");
        consistStringLength(11, cpf, "O cpf deve ter 11 dígitos.");
        consistNumeric(cpf, "O campo CPF só pode conter números.");
        this.cpf = cpf;
    }
}
